home *** CD-ROM | disk | FTP | other *** search
/ Commodore 64 Scene Diskmags Assortment / Uptime_The_Disk_Monthly_V1_12_19xx_Uptime_staff_Side_A.d64 / reader's survey (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  7KB  |  299 lines

  1. 1 rem *********************************
  2. 2 rem *                               *
  3. 3 rem *  pgm title : reader's survey  *
  4. 4 rem *  pgm author: dave hammond     *
  5. 5 rem *                               *
  6. 6 rem *  (c)1986 viking technologies  *
  7. 7 rem *    (c)1986 uptime magazine    *
  8. 8 rem *                               *
  9. 9 rem *********************************
  10. 10 :
  11. 16 :
  12. 20 print chr$(8)chr$(14)
  13. 30 uptime=(8*4096)+4: de=186
  14. 40 poke53280,0: poke53281,0
  15. 95 :
  16. 100 gosub 1000: rem *** screen template ***
  17. 110 gosub 1500: rem *** screen #1 ***
  18. 115 :
  19. 120 get k$: if k$="" then 120
  20. 130 if k$=chr$(140) then 550
  21. 140 if k$<>chr$(13) then 120
  22. 195 :
  23. 200 gosub 1600: rem *** screen #2 ***
  24. 205 :
  25. 210 get k$: if k$="" then 210
  26. 220 if k$=chr$(140) then 550
  27. 230 if k$<>chr$(13) then 210
  28. 295 :
  29. 300 gosub 1700: rem *** screen #3 ***
  30. 305 :
  31. 310 get k$: if k$="" then 310
  32. 320 if k$=chr$(140) then 550
  33. 330 if k$<>chr$(13) then 310
  34. 395 :
  35. 400 gosub 1800: rem *** screen #4 ***
  36. 405 :
  37. 410 ml=23: gosub 5000: rem *** get kbd input ***
  38. 415 :
  39. 420 n$=t$: if t$="" then n$="an anonymous source"
  40. 425 :
  41. 430 gosub 1900: rem *** screen #4 con't ***
  42. 435 :
  43. 440 get k$: if k$="" then 440
  44. 450 if k$=chr$(140) then 550
  45. 460 if k$<>chr$(13) then 440
  46. 465 :
  47. 500 er=0: gosub 2000: rem *** output to printer ***
  48. 505 if er=1 then goto 600
  49. 506 :
  50. 510 gosub 3000: rem *** screen #5 ***
  51. 515 :
  52. 520 get k$: if k$="" then 520
  53. 530 if k$=chr$(140) then 550
  54. 540 if k$<>chr$(13) then 520
  55. 545 :
  56. 550 poke de,8: sys uptime
  57. 595 :
  58. 596 rem ***************
  59. 597 rem  printer error
  60. 598 rem ***************
  61. 599 :
  62. 600 gosub 1400: rem *** clear text area ***
  63. 605 :
  64. 610 printspc(6)" [150] [212]here is a printer error  [155]"
  65. 620 printspc(6)"[210]echeck all of your printer"
  66. 630 printspc(5)"connections and the printer's"
  67. 640 printspc(6)"paper supply and try again."
  68. 645 :
  69. 650 get k$: if k$="" then 650
  70. 660 if k$=chr$(140) then 550
  71. 670 if k$<>chr$(13) then 650
  72. 675 :
  73. 680 gosub 1400: rem *** clear text area ***
  74. 685 :
  75. 690 printspc(16)"[208]rinting"
  76. 700 printspc(12)"[210]eader's  [211]urvey"
  77. 710 goto 500: rem *** retry printer ***
  78. 990 end
  79. 995 :
  80. 996 rem *****************
  81. 997 rem  screen template
  82. 998 rem *****************
  83. 999 :
  84. 1000 print"[147]";
  85. 1010 tl$="[176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  86. 1020 bl$="[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189][155]"
  87. 1030 m1$="[221]": m2$="                                     [146][221]"
  88. 1040 m3$="[171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]"
  89. 1050 c$="[158]": r$="": printtl$
  90. 1060 for x=1to23
  91. 1070 printm1$;c$;r$;m2$
  92. 1080 if x=5 then x=6: c$="": r$="[146]": printm3$
  93. 1090 if x=18 then x=19: c$="": r$="": printm3$
  94. 1100 next
  95. 1200 printbl$
  96. 1210 printspc(10)" [213]p[212]ime [158] [205]agazine's"
  97. 1220 printspc(12)"[210]eader's [211]urvey"
  98. 1230 for x=1to16: print: next
  99. 1240 printspc(7)"[208]ress [[210][197][212][213][210][206]] to [195]ontinue"
  100. 1250 printspc(4)"[208]ress [198]8 to [197]xit [194]ack to [213]p[212]ime[155]"
  101. 1290 return
  102. 1395 :
  103. 1396 rem *****************
  104. 1397 rem  clear text area
  105. 1398 rem *****************
  106. 1399 rem :
  107. 1400 print"";
  108. 1410 for x=1to12
  109. 1420 print"[221]                                     [221]"
  110. 1430 next
  111. 1440 print"[155]";
  112. 1450 return
  113. 1495 :
  114. 1496 rem ***********
  115. 1497 rem  screen #1
  116. 1498 rem ***********
  117. 1499 :
  118. 1500 gosub 1400: rem *** clear text area ***
  119. 1505 :
  120. 1510 printspc(8)"[213]p[212]ime the [196]isk [205]onthly[155]"
  121. 1520 printspc(2)"is the [159]premiere[155] magazine on a disk"
  122. 1530 printspc(7)"for the [195]ommodore 64/128"
  123. 1540 printspc(5)"[215]e are constantly working to"
  124. 1550 printspc(8)"improve our publication"
  125. 1560 printspc(11)"and [217][207][213][155][160]can help!"
  126. 1590 return
  127. 1595 :
  128. 1596 rem ***********
  129. 1597 rem  screen #2
  130. 1598 rem ***********
  131. 1599 :
  132. 1600 gosub 1400: rem *** clear text area ***
  133. 1605 :
  134. 1610 printspc(6)"[217]ou can help us stay #1[155] by"
  135. 1620 printspc(9)"providing your input:
  136. 1630 [153][166]6)"sys(NULL)raiselist, printlenriticismlist, openlenommentslist"
  137. 1640 [153][166]4)"atnnything that you feel will help"
  138. 1650 [153][166]7)"us meet your expectations"
  139. 1660 [153][166]14)"with (NULL)p(NULL)imelist"
  140. 1690 [142]
  141. 1695 :
  142. 1696 [143] ***********
  143. 1697 [143]  screen #3
  144. 1698 [143] ***********
  145. 1699 :
  146. 1700 [141] 1400: [143] *** clear text area ***
  147. 1705 :
  148. 1710 [153][166]3)"peeky following the next few prompts"
  149. 1720 [153][166]5)"your printer will print out a"
  150. 1730 [153][166]5)"reader's survey form for you."
  151. 1740 [153][166]4)"(NULL)lease take the time to fill out"
  152. 1750 [153][166]3)"the survey and return it using the"
  153. 1760 [153][166]4)"enclosed business reply envelope."
  154. 1770 [153][166]4)"(NULL)e will use the results of this"
  155. 1780 [153][166]5)"survey to determine what it is"
  156. 1790 [153][166]3)"you've come to expect from (NULL)p(NULL)imelist": [142]
  157. 1795 :
  158. 1796 [143] ***********
  159. 1797 [143]  screen #4
  160. 1798 [143] ***********
  161. 1799 :
  162. 1800 [141] 1400: [143] *** clear text area ***
  163. 1805 :
  164. 1810 [153][166]3)"right$f you'd like to include your name"
  165. 1820 [153][166]10)"enter it now, please."
  166. 1830 [153][166]2)"(atn [(NULL)val(NULL)(NULL)(NULL)(NULL)] will make it anonymous)"
  167. 1840 [153][166]4)"(NULL)ame:tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
  168. 1850 [153][166]8)"onon*cmd";
  169. 1860 [142]
  170. 1895 :
  171. 1896 [143] *****************
  172. 1897 [143]  screen #4 con't
  173. 1898 [143] *****************
  174. 1899 :
  175. 1900 [141] 5200: [143] *** ck for dsywhl ***
  176. 1905 [153][166]11)"(NULL)eady your printer"
  177. 1910 [153][166]7)"(NULL)ress sys[(NULL)val(NULL)(NULL)(NULL)(NULL)]list when ready"
  178. 1920 [142]
  179. 1995 :
  180. 1996 [143] *******************
  181. 1997 [143]  output to printer
  182. 1998 [143] *******************
  183. 1999 :
  184. 2000 [159] 4,4:[160]4:s[178]st: [143] *** ml routine to open printer chn ***
  185. 2010 [139] a[179][177]0 [167] er[178]1: [137] 2490
  186. 2015 [159] 4,4,7
  187. 2020 [152]4,[199](10)[199](10)
  188. 2025 [152]4,""[166]11)"(NULL)eader's (NULL)urvey for the lenommodore 64/128    ";
  189. 2027 [152]4,"(NULL)ol. 1 (NULL)o. 12"
  190. 2030 [152]4,[199](10)
  191. 2040 [152]4,"     (NULL)his survey is from ";n$;"."
  192. 2050 [152]4,[199](10)[199](0)
  193. 2100 l$[178]"totototototototototototototototo"
  194. 2105 [139] dw[178]1 [167] l$[178]"................"
  195. 2165 [152]4,"     ***********************************";
  196. 2167 [152]4,"***********************************"
  197. 2170 bx$[178]"[   ]   tototototototototototototototototototototototototototototototototototototo"
  198. 2172 [139] dw[178]1 [167] bx$[178]"[   ]   ....................................."
  199. 2175 [152]4,[199](10)[199](0)
  200. 2180 [152]4,"     (NULL)lease rate the following programs and categories on a"
  201. 2190 [152]4,"     scale between 1 and 10 with 10 being the highest."
  202. 2195 [152]4,[199](10)[199](0)
  203. 2200 [152]4,"     atnlphabopper      ";bx$
  204. 2205 [152]4,[199](0)
  205. 2206 [152]4,"     chr$o-(NULL)oku          ";bx$
  206. 2207 [152]4,[199](0)
  207. 2210 [152]4,"     lenryptogram atnsst. ";bx$
  208. 2212 [152]4,[199](0)
  209. 2214 [152]4,"     (NULL)ravel (NULL)og       ";bx$
  210. 2215 [152]4,[199](0)
  211. 2220 [152]4,"     len(NULL)(NULL)atn(NULL)            ";bx$
  212. 2225 [152]4,[199](0)
  213. 2230 [152]4,"     (NULL)prite valditor    ";bx$
  214. 2235 [152]4,[199](0)
  215. 2240 [152]4,"     (NULL)len-str$(NULL)(NULL)/64        ";bx$
  216. 2247 [152]4,[199](0)
  217. 2250 [152]4,"     (NULL)esar on (NULL)rack   ";bx$
  218. 2255 [152]4,[199](0)
  219. 2260 [152]4,"     (NULL)rogramming w/(NULL)(NULL) ";bx$
  220. 2265 [152]4,[199](0)
  221. 2266 [152]4,"     (NULL)andom atnccess    ";bx$
  222. 2267 [152]4,[199](0)
  223. 2270 [152]4,"     (NULL)earning asc(NULL)(NULL)(NULL)left$   ";bx$
  224. 2271 [152]4,[199](0)
  225. 2272 [152]4,"     asc(NULL)(NULL)(NULL)left$ (NULL)yntax     ";bx$
  226. 2273 [152]4,[199](0)
  227. 2274 [152]4,"     (NULL)hat's len(NULL)(NULL)atn(NULL)?    ";bx$
  228. 2275 [152]4,[199](0)
  229. 2276 [152]4,"     geoleft$orizons      ";bx$
  230. 2277 [152]4,[199](0)
  231. 2278 [152]4,"     (NULL)oftware (NULL)eviews ";bx$:[152]4,[199](0)
  232. 2280 [152]4,"     right$'d rate the issue overall  [   ]
  233. 2285 print#4,chr$(0)
  234. 2287 print#4,chr$(0)
  235. 2300 print#4,"     [193]ny other comments or observations you'd care to make:"
  236. 2305 print#4,chr$(0)
  237. 2310 print#4,"     ";l$;l$;l$;l$
  238. 2315 print#4,chr$(0)
  239. 2320 print#4,"     ";l$;l$;l$;l$
  240. 2325 print#4,chr$(0)
  241. 2326 print#4,"     ";l$;l$;l$;l$
  242. 2327 print#4,chr$(0)
  243. 2328 print#4,"     ";l$;l$;l$;l$
  244. 2330 print#4,chr$(12)
  245. 2490 close4: return
  246. 2995 :
  247. 2996 rem ***********
  248. 2997 rem  screen #5
  249. 2998 rem ***********
  250. 2999 :
  251. 3000 gosub 1400: rem clear text area
  252. 3005 :
  253. 3010 printspc(5)"[212]hank-you for taking the time"
  254. 3020 printspc(8)"to print out the survey."
  255. 3030 printspc(3)"[215]e'll be waiting to hear from you."
  256. 3040 printspc(2)"[208]lease send the completed survey to"
  257. 3050 printspc(8)"[213]p[212]ime, the [196]isk [205]onthly[155]"
  258. 3060 printspc(8)"[208][207] [194]ox 299"
  259. 3070 printspc(8)"[206]ewport, [210][201] 02840"
  260. 3080 return
  261. 4995 :
  262. 4996 rem ***********
  263. 4997 rem  kbd input
  264. 4998 rem ***********
  265. 4999 :
  266. 5000 t$="": cs$="*[157]": ct=0
  267. 5010 get k$: if k$="" then 5010
  268. 5020 k=asc(k$)
  269. 5025 if k=140 then 550
  270. 5030 if k=13 then 5100
  271. 5040 if k<>20 then 5070
  272. 5050 if ct=0 then 5010
  273. 5060 ct=ct-1: print" [157][157] [157]";cs$;: t$=left$(t$,ct): goto 5010
  274. 5070 if ct=ml then 5010
  275. 5080 if (k=32) or (k=46) then 5085
  276. 5082 if (k$>="a") and (k$<="z") then 5085
  277. 5084 if (k$<"[193]") or (k$>"[218]") then 5010
  278. 5085 t$=t$+k$: ct=ct+1: printk$;: if ct<>24 then printcs$;
  279. 5090 goto 5010
  280. 5100 if t$="" then print"[193]nonymous";
  281. 5110 print" ": return
  282. 5195 :
  283. 5196 rem ****************************
  284. 5197 rem  ck for daisy wheel printer
  285. 5198 rem ****************************
  286. 5199 :
  287. 5200 printspc(9)"[155][195]an your printer print"
  288. 5210 printspc(5)"[195]ommodore [199]raphic characters?"
  289. 5220 printspc(15)"[158]< [217] / [206] >[155]": print"[145][145][145]";
  290. 5230 dw=0
  291. 5240 get k$: if k$ = "" then 5240
  292. 5250 if (k$="y") or (k$="[217]") then 5280
  293. 5255 if k$=chr$(140) then 550
  294. 5260 if (k$<>"n") and (k$<>"[206]") then 5240
  295. 5270 dw=1
  296. 5280 for x=1to3: print"                                   ": next
  297. 5285 print"[145][145][145][145]";
  298. 5290 return
  299.